/*
	The directives starting with # below ensures that this file is read by the compiler only once
	even if it is #included several times. It is call an "include guard"
*/

/* This file (Order.h) is edited by MGM, A2 */

#ifndef ORDER_H_
#define ORDER_H_

//other types
#include "Date.h"				//uncomment once you have added the type definition
#include "Time.h"				//uncomment once you have added the type definition
#include <string>
#include <sstream>		// MGM, A.2
using namespace std;

struct Order {
public:
	//data

	// constructors
	Order ();

	//construction with parameters (MGM / A.2)
	Order(int orderID, int serverID, int tableID, Date orderDate, Time orderTime);

   // utility functions
	string display() const;

	//getter (MGM, A2)
	int getOrderID() const {return order_id;}
	int getServerID() const {return server_id;}
	int getTableID() const {return table_id;}
	Date getOrderDate() const {return order_date;}
	Time getOrderTime() const {return order_time;}

private:
   //constants

   // private data
	int order_id;
	int server_id;
	int table_id;
	Date order_date;	//uncomment once you have added the type definition
	Time order_time;  //uncomment once you have added the type definition
};


#endif //ORDER_H_